﻿/*********************************************************
 * 开发人员：小兵
 * 创建时间：2012-10-9 10:16:52
 * 描述说明：
 * 
 * 更改历史：
 * 
 * *******************************************************/
namespace Mozlite.Data
{
    using System;
    using System.Web;
    using System.Data;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    /// <summary>
    /// 数据库参数适配器。
    /// </summary>
    /// <typeparam name="TParameter">参数类型。</typeparam>
    public class SqlParameterAdapter<TParameter> : ISqlParameter<TParameter> where TParameter : IDataParameter
    {
        private readonly TParameter rawParameter;

        /// <summary>
        /// 获取参数名称。
        /// </summary>
        public string ParameterName
        {
            get { return rawParameter.ParameterName; }
        }

        /// <summary>
        /// 获取参数值。
        /// </summary>
        public object Value
        {
            get { return rawParameter.Value; }
        }

        /// <summary>
        /// 获取原始参数类型。
        /// </summary>
        public TParameter RawParameter
        {
            get { return rawParameter; }
        }

        /// <summary>
        /// 初始化类<see cref="SqlParameterAdapter&lt;TParameter&gt;"/>。
        /// </summary>
        /// <param name="rawParameter">原始参数实例。</param>
        public SqlParameterAdapter(TParameter rawParameter)
        {
            this.rawParameter = rawParameter;
        }
    }
}
